/*auto*/

$font    : 'Source Sans Pro';
.container { padding-left: 25px; padding-right: 25px; }

html,body { height: 100%; }
body { background-color: white; padding: 0; color: #AAB2BD; font-smoothing: antialiased; }
form { padding: 0; margin: 0; }

header { border-bottom: 1px solid #F0F0F0; padding: 15px 0; margin-bottom: 30px; }
header nav { float: right; margin: 5px 0 0 0; }
header nav a { margin-left: 20px; color: gray; }
header nav a:first-child { margin-left: 0; }
header nav .fa { margin-right: 5px; }
footer { text-align: center; font-size: 12px; padding: 50px 0; color: gray; border-top: 1px dotted #E0E0E0; margin: 40px 20px 0; }

.mainmenu-button { border: 1px solid #F0F0F0; background-color: white; outline: 0; border-radius: 4px; font-size: 18px; width: 34px; height: 30px; position: absolute; right: 20px; display: none; text-align: center; color: silver; padding: 1px 0 0 0; text-decoration: none !important; }
.mainmenu-visible { display: block; }

h1 { font-family: $font; margin: 10px 0 30px; padding: 0; font-size: 34px; font-weight: 400; color: #656D78; text-align: center; }
h1 b, h1 strong { font-weight: 700; }
h2 { font-family: $font; margin: 0 0 10px; padding: 0; font-size: 20px; font-weight: 400; color: gray; }
h2.large { font-size: 30px; margin-bottom: 15px; font-weight: 200; }

h3 { font-family: $font; margin: 0 0 10px; padding: 0; font-size: 20px; font-weight: 400; color: #656D78; }
h3.large { font-size: 30px; margin-bottom: 15px; font-weight: 200; }

.m { margin-bottom: 20px; }

.newsletter { background-color: #F0F0F0; margin: 20px 0; }
.newsletter-input { margin-right: 150px; padding: 0 20px; background-color: #F0F0F0; }
.newsletter-input input { width: 100%; background-color: transparent; border: 0; font-size: 16px; height: 40px; outline: 0; color: black; }
.newsletter-button { width: 150px; float: right; margin: 0; padding: 0; }
.newsletter-button button { width: 100%; background-color: #D0D0D0; border: 0; height: 40px; color: gray; }
.newsletter-button button:hover { background-color: black; color: white; }
.newsletter-button .fa { margin-right: 8px; font-size: 16px; }
.newsletter-success { color: #7B9B46 !important; }

.linkbutton { display: block; border: 2px solid #69AF44; padding: 20px 0; text-align: center; border-radius: 4px; color: #69AF44; font-family: $font; font-size: 20px; background-color: white; text-decoration: none; }
.linkbutton:hover { color: white; text-decoration: none; background-color: #69AF44; }
.linkbutton:focus { color: #69AF44; text-decoration: none; background-color: white; }
.linkbutton:active { box-shadow: inset 0 2px 5px rgba(0,0,0,0.1); color: white; background-color: #69AF44; }

.reference * { transition: all 0.5s; }
.reference a { position: relative; display: block; color: gray; }
.reference a:hover { text-decoration: none !important; }
.reference a:hover * { text-decoration: none; }
.reference a:hover span { background-color: #F0F0F0; color: black; }
.reference-title { display: block; padding: 10px 0; background-color: #F8F8F8; text-align: center; font-size: 12px; }
.reference b { display: block; font-size: 14px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.reference { margin-bottom: 30px; }

.message-success { background-color: #8CC152; color: white; padding: 18px 20px; text-align: center; font-size: 16px; }

@media (max-width: 767px) {
	.mainmenu-button { display: block; }
	header { padding-bottom: 15px; }
	header nav { display: none; float: none; margin-top: 20px; }
	header nav a { display: block; border-top: 1px solid #F0F0F0; margin: 3px 0; padding: 5px 0; font-size: 16px; }
	header nav a:first-child { border-top: 0; }
}